package net.zigin.nhi.could.waste.model;

import lombok.Data;
import net.zigin.commons.util.StringUtil;
import net.zigin.nhi.could.waste.aop.LoginAspect;
import net.zigin.nhi.could.waste.dto.WasteCollectDto;
import net.zigin.nhi.could.waste.vo.TokenInfoBo;

import java.util.Date;

/*#################################################################*
# 说明:以下代码通过哲勤代码生成工具自动生成    
# 工具:GeneratorCode
# 作者:mgw1986                                                  
# 生成时间:2021-9-13 21:14:41                                               
##################################################################*/

/**
 * WasteBase实体类
 *
 * @author mgw1986
 * @version V1.0
 * @ClassName: WasteBase
 * @date 2021-9-13 21:14:41
 */
@Data
public class WasteBase {
    //医废基础ID--->列名: id
    private String id;
    //移交员工ID--->列名: hand_user_staff_id
    private String handUserStaffId;
    //收集员工ID--->列名: collect_user_staff_id
    private String collectUserStaffId;
    //医废接收人ID--->列名: user_revicer_id
    private String userRevicerId;
    //医院科室ID--->列名: hospital_depart_id
    private String hospitalDepartId;
    //医院暂存点ID--->列名: hospital_place_id
    private String hospitalPlaceId;
    //医院基础ID--->列名: hospital_base_id
    private String hospitalBaseId;
    //医废集装箱ID--->列名: waste_box_id
    private String wasteBoxId;
    //医废集装箱记录ID--->列名: waste_box_record_id
    private String wasteBoxRecordId;
    //医废分类ID--->列名: waste_classify_code
    private String wasteClassifyCode;
    //医废编号--->列名: code
    private String code;
    //医废重量--->列名: weight
    private float weight;
    //医废状态（do_collect：收集，in_depot：入库，out_depot：出库）--->列名: status
    private String status;
    //移交员工姓名--->列名: hand_user_staff_name
    private String handUserStaffName;
    //收集员工姓名--->列名: collect_user_staff_name
    private String collectUserStaffName;
    //接收人姓名--->列名: user_revicer_name
    private String userRevicerName;
    //医废分类名称--->列名: waste_classify_name
    private String wasteClassifyName;
    //医院名称--->列名: hospital_base_name
    private String hospitalBaseName;
    //医院科室名称--->列名: hospital_depart_name
    private String hospitalDepartName;
    //医院暂存点名称--->列名: hospital_place_name
    private String hospitalPlaceName;
    //医废集装箱编号--->列名: waste_box_code
    private String wasteBoxCode;
    //创建人--->列名: create_user
    private String createUser;
    //创建时间--->列名: create_time
    private Date createTime;
    //修改人--->列名: modify_user
    private String modifyUser;
    //修改时间--->列名: modify_time
    private Date modifyTime;
    //医废备注--->列名: remark
    private String remark;
    //RFID--->列名: rfid
    private String rfid;
    //是否删除（1表示是,0表示否）--->列名: is_delete
    private Integer isDelete;

    public WasteBase() {
    }

    public WasteBase(WasteCollectDto wasteCollectDto) {
        TokenInfoBo tokenInfo = LoginAspect.getTokenInfo();
        this.id = StringUtil.get32UUID();
        this.createTime = new Date();
        this.createUser = tokenInfo.getLoginName();
        this.modifyTime = new Date();
        this.weight = wasteCollectDto.getWeight();
        this.wasteClassifyName = wasteCollectDto.getWasteClassifyName();
        this.wasteClassifyCode = wasteCollectDto.getWasteClassifyCode();
        this.remark = wasteCollectDto.getRemark();
        this.status = "do_collect";
        this.rfid = wasteCollectDto.getRfid();
    }
}
